package 算法练习;/**
 * @author： li
 * @date： 2022-01-21 12:56
 * @version 1.0
 */

/*问题描述
　　给出一个正整数n，求一个和最大的序列a0，a1，a2，……，ap，满足n=a0>a1>a2>……>ap且ai+1是ai的约数，输出a1+a2+……+ap的最大值
输入格式
　　输入仅一行，包含一个正整数n
输出格式
　　一个正整数，表示最大的序列和，即a1+a2+……+ap的最大值
样例输入
10
样例输出
6
数据规模和约定
　　1<n<=10^6
样例说明
　　p=2
　　a0=10，a1=5，a2=1，6=5+1
解题思路：找最大约数，直到倒数第二个数的约数为1
约数又称因数 例：10可以被5整除 5就是10的约数 本题只要找最大的约数
样例思路：
10的最大约数为5，5的最大约数为1，当约数为一的时候结束，因为1的约数就是1；
找a0的最大约数，找a1的最大约数，
 */
import java.util.Scanner;
public class 最大分解 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int max = 0;
        int i=n-1;//从n-1开始找n的最大约数（因数）
        while (n>1){
            if (n%i==0){
                max=max+i;
                n=i;
                i=n-1;
            }
            else
                i--;
        }
        System.out.println(max);
    }
}
